package com.heima.wemedia.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.heima.model.common.dtos.ResponseResult;
import com.heima.model.wemedia.dto.NewsAuthDto;
import com.heima.model.wemedia.dto.WmNewsDto;
import com.heima.model.wemedia.dto.WmNewsPageReqDto;
import com.heima.model.wemedia.pojo.WmNews;

import java.util.List;

/**
 * Created by ZYJ on 2021/5/28 21:27
 */
public interface WmNewsService extends IService<WmNews> {

    /**
     * 自媒体文章列表查询
     * @param dto
     * @return
     */
    public ResponseResult findAll(WmNewsPageReqDto dto);
    /**
     * 自媒体文章发布,修改,草稿
     * @param dto
     * @return
     */
    ResponseResult submitNews(WmNewsDto dto);

    /**
     * 根据ID查询自媒体文章
     * @param id
     * @return
     */
    ResponseResult findWmNewsById(Integer id);

    /**
     * 自媒体文章的删除
     * @param id
     * @return
     */
    ResponseResult deleteNews(Integer id);

    /**
     * 自媒体文章的上架或者下架
     * @param dto
     * @return
     */
    ResponseResult downOrUp(WmNewsDto dto);

    /**
     * 查询需要发布的文章id列表
     * @return
     */
    List<Integer> findRelase();

    /**
     * 查询文章列表
     * @param dto
     * @return
     */
    ResponseResult findList(NewsAuthDto dto);

    /**
     * 根据文章id查询文章详情(Vo中内容加文章作者)
     * @param id
     * @return
     */
    ResponseResult findWmNewsVo(Integer id);

    /**
     * 修改文章(人工审核 通过 status=4 失败 status = 2 )
     * @param wmNewsAuthPass
     * @param dto
     * @return
     */
    ResponseResult updateStatus(Short wmNewsAuthPass, NewsAuthDto dto);
}
